<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Document</title>
</head>
<body>
    <script>
        const p1 = {
            name: '张三',
            age: 18,
            address: {
                city: '北京',
                desc:{
                    a:1,
                    b:2
                }
            },
            hobby:['吃饭','睡觉','打豆豆']
        }

        // JSON.stringify() 将对象转换为字符串
        // JSON.parse() 将字符串转换为对象

        const p2 = JSON.parse(JSON.stringify(p1));
        // console.log(p1,p2);
        // 修改第一层 
        // p2.name = '李四';
        // console.log(p1,p2);
        // 修改第二层
        // p2.address.city = '山东济南';
        // console.log(p1,p2);
        // p2.hobby[0] = '打篮球';
        // console.log(p1,p2);
        // 修改第三层
        p2.address.desc.a = 24678;
        console.log(p1,p2);
        // JSON.stringify() 将对象转换为字符串  按照基本类型的拷贝方式
        // 开辟的都是独立的空间 互相不影响   
        // JSON.parse() 将字符串转换为对象 
    </script>
</body>
</html>